"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
/**文件目录处理 */
const m_file_1 = tslib_1.__importDefault(require("./m-file"));
/**配置处理 */
class MConfig {
    /**包配置信息 */
    static config = { name: "", version: "" };
    /**加载配置 */
    static async load() {
        const file = m_file_1.default.joinDirPath(m_file_1.default.getRoot(), "package.json");
        let res = { name: "", version: "" };
        try {
            const jsonStr = await m_file_1.default.readFile(file);
            res = JSON.parse(jsonStr);
        }
        catch (err) {
            res = {};
        }
        MConfig.config = res;
        return MConfig;
    }
    /**获取配置中的项目名称 */
    static getName() {
        return MConfig.config.name || "";
    }
    /**获取配置中的项目版本号 */
    static getVersion() {
        return MConfig.config.version || "";
    }
    /**获取配置中的开源协议名称 */
    static license() {
        return MConfig.config.license || "";
    }
    /**获取配置中的项安装包含目录 */
    static files() {
        return MConfig.config.files || [];
    }
    /**获取配置中的打包依赖 */
    static dependencies() {
        return MConfig.config.dependencies || {};
    }
    /**获取配置中的项本地依赖 */
    static devDependencies() {
        return MConfig.config.devDependencies || {};
    }
}
exports.default = MConfig;
